<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        
    </style>
</head>
<body>
    
</body>
<script>
    
    需求：有三个数据接口，需要在请求a成功后，再去请求b，成功后，再起请求c


    ajax("a", res=>{ console.log(res) } )
    ajax("b", res=>{ console.log(res) } )
    ajax("c", res=>{ console.log(res) } )

    异步：同时执行，无法保证执行顺序

    ajax("a", res=>{ 
        ajax("b", res=>{
            ajax("c", res=>{
                ajax("b", res=>{
                    ajax("b", res=>{
                        ajax("b", res=>{
                            ajax("b", res=>{
                                ajax("b", res=>{ console.log(res) } )
                            } )
                        } )
                    } )
                } )
            } )
        } )
    } )

    ajax("a").then(()=>{
        return ajax("b")
    }).then(()=>{
        return ajax("c")
    }).then(()=>{
        return ajax("c")
    }).then(()=>{
        return ajax("c")
    }).then(()=>{
        return ajax("c")
    }).then(()=>{
        return ajax("c")
    }).then(()=>{
        return ajax("c")
    }).then(()=>{
        return ajax("c")
    }).catch((code)=>{
        console.log(code)
    })
    
    function ajax( url, cb ){
        使用Promise进行包装之后
        创建xhr对象
        xhr.open("get", url)
        xhr.send()
        xhr.onreadystatechange = function(){
            cb(只有在此处能拿到数据)
        }
    }

</script>
</html>